Predicting time to vaginal delivery

ABSTRACT

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for predicting the time to vaginal delivery of an infant. In one aspect, a method comprises: obtaining patient data characterizing a patient, comprising automatically querying a database storing one or more electronic medical records of the patient; generating a model input to a delivery time machine learning model based on the patient data characterizing the patient; processing the model input using the delivery time machine learning model, in accordance with values of a set of model parameters of the delivery time machine learning model, to generate a prediction for the time to vaginal delivery of the infant; and generating a notification that indicates the prediction for the time to vaginal delivery of the infant.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation to U.S. application Ser. No.17/887,875, filed on Aug. 15, 2022, which claims priority to U.S.Provisional Application No. 63/233,859, filed on Aug. 17, 2021. Thedisclosure of the prior applications are considered part of and areincorporated by reference in the disclosure of this application.

TECHNICAL FIELD

This application relates predicting the time from admission to vaginaldelivery of an infant using machine learning.

BACKGROUND

The overall course of induction of labor and natural labor ismultifactorial. A patient's initial cervical examination, gestationalage, presence of rupture of membranes, preeclampsia, chorioamnionitisand demographics may all affect the timing and success of a vaginaldelivery. Due to the variables involved in labor, it is important to setexpectations for the course and timing of delivery when counselingpatients in the office and at the time of admission to the hospital.Unfortunately, there are few tools available that may predict theexpected course of labor.

SUMMARY

This specification describes a delivery time prediction systemimplemented as computer programs on one or more computers in one or morelocations that can generate a prediction characterizing an amount oftime until a patient gives birth, e.g., through vaginal delivery.

According to a first aspect, there is provided a method performed by oneor more computers, the method comprising: receiving a request to predicta time to vaginal delivery of an infant by a patient; and in response toreceiving the request: obtaining patient data characterizing thepatient, comprising automatically querying a database storing one ormore electronic medical records of the patient; generating a model inputto a delivery time machine learning model based on the patient datacharacterizing the patient; processing the model input using thedelivery time machine learning model, in accordance with values of a setof model parameters of the delivery time machine learning model, togenerate a prediction for the time to vaginal delivery of the infant;and generating a notification that indicates the prediction for the timeto vaginal delivery of the infant.

In some implementations, the method further comprises, prior toreceiving the request: training the delivery time machine learning modelby a machine learning training technique.

In some implementations, training the delivery time machine learningmodel by the machine learning training technique comprises: obtaining aset of training examples, wherein each training example comprises: (i) atraining model input to the delivery time machine learning model, and(ii) a target delivery time; and training the delivery time machinelearning model on the set of training examples, comprising, for eachtraining example, training the delivery time machine learning model toprocess the training model input of the training example to generate apredicted delivery time that matches the target delivery time for thetraining example.

In some implementations, the patient data characterizing the patientcomprises a plurality of patient features that characterize one or moreof: demographic features of the patient, features of a medical historyof the patient, features characterizing a fetus of the patient, featurescharacterizing physical characteristics of the patient, or featurescharacterizing medical interventions applied to the patient.

In some implementations, the method further comprises: determining thatan update criterion has been satisfied; and in response to determiningthat the update criterion has been satisfied: obtaining updated patientdata characterizing the patient; and processing the updated patient datausing the delivery time machine learning model to generate an updatedprediction for the time to vaginal delivery of the infant.

In some implementations, determining that an update criterion has beensatisfied comprises: determining that a threshold duration of time haselapsed since the time to vaginal delivery of the infant was previouslypredicted using the delivery time machine learning model.

In some implementations, determining that an update criterion has beensatisfied comprises: determining that a value of a featurecharacterizing the patient has changed by at least a threshold amountsince the time to vaginal delivery of the infant was previouslypredicted using the delivery time machine learning model.

In some implementations, the method further comprises, prior toprocessing the model input using the delivery time machine learningmodel: determining a patient category of the patient based on thepatient data characterizing the patient, wherein each patient categoryis associated with a respective delivery time machine learning modelthat is specialized for predicting delivery times for patients includedin the patient category; and selecting the delivery time machinelearning model to be used for processing the patient data as thedelivery time machine learning model associated with the patientcategory of the patient.

In some implementations, determining the patient category of the patientbased on the patient data characterizing the patient comprises:determining the patient category of the patient based at least in parton any medical interventions applied to the patient.

In some implementations, the delivery time machine learning modelincludes one or more of: a neural network model, a random forest model,a support vector machine model, or a linear regression model.

In some implementations, generating the notification that indicates theprediction for the time to vaginal delivery of the infant comprises:transmitting the notification over a data communications network.

In some implementations, the method further comprises, after generatingthe prediction for the time to vaginal delivery of the infant:automatically interfacing with a resource reservation system to reserveone or more resources related to delivery of the infant in a time windowbased on the predicted time to vaginal delivery of the infant.

In some implementations, automatically interfacing with the resourcereservation system to reserve one or more resources related to deliveryof the infant in the time window based on the predicted time to vaginaldelivery of the infant comprises: automatically reserving a deliveryroom in the time window based on the predicted time to vaginal deliveryof the infant.

In some implementations, the method further comprises, after generatingthe prediction for the time to vaginal delivery of the infant:determining that vaginal delivery of the infant has not occurred withina threshold duration of time following the predicted time to vaginaldelivery of the infant; and automatically generating a notificationindicating that vaginal delivery of the infant has not occurred withinthe threshold duration of time following the predicted time to vaginaldelivery of the infant.

In some implementations, obtaining patient data characterizing thepatient comprises: obtaining patient data generated by one or more of: asensor mounted on the patient, a wearable device worn by the patient, ora sensor mounted on a machine in proximity to the patient.

In some implementations, the method further comprises: generating aconfidence estimate that measures a confidence of the delivery timemachine learning model in the prediction for the time to vaginaldelivery of the infant.

In some implementations, the method further comprises: generating arespective importance score for each of a plurality of features includedin the patient data characterizing the patient, wherein the importancescore for a feature measures an impact of the feature on the predictedtime to vaginal delivery of the infant generated by the delivery timemachine learning model.

In some implementations, the method further comprises: automaticallystoring the prediction for the time to vaginal delivery of the infant inan electronic medical record of the patient.

According to another aspect, there is provided a system comprising: oneor more computers; and one or more storage devices communicativelycoupled to the one or more computers, wherein the one or more storagedevices store instructions that, when executed by the one or morecomputers, cause the one or more computers to perform operations of themethods described herein.

According to another aspect, there are provided one or morenon-transitory computer storage media storing instructions that whenexecuted by one or more computers cause the one or more computers toperform operations of the methods described herein.

According to another aspect, there is provided a method of modeling thetime to vaginal delivery of an infant to form a delivery time algorithmcomprising the steps of: collecting historical patient data pertainingto vaginal delivery of an infant; determining factors of a plurality offactors that are statistically significant with respect to time tovaginal delivery of the infant; determining relationships between thefactors that are statistically significant; estimating how the time tovaginal delivery of the infant changes as each of the statisticallysignificant factors change; and deriving a delivery time algorithm (DTA)to predict an expected time to vaginal delivery of the infant using thestatistically significant factors.

According to another implementation, there is provided a method ofpredicting the time to vaginal delivery of an infant comprising thesteps of: inputting patient data for a pregnant patient into a DTA; andpredicting the time to vaginal delivery of the infant using the DTA andthe patient data inputted into the DTA.

In some implementations, the method further comprises interfacing withthe patient's electronic medical record to retrieve the patient dataprior to inputting the patient data into the DTA.

In some implementations, the method further comprises interfacing withthe patient's electronic medical record to provide the predicted time tovaginal delivery to the patient's electronic medical record.

Particular embodiments of the subject matter described in thisspecification can be implemented so as to realize one or more of thefollowing advantages.

The delivery time prediction system described in this specification canenable accurate estimation of an amount of time until a pregnant patientgives birth, e.g., through vaginal delivery. The delivery timeprediction system can generate predicted delivery times using a machinelearning model that has been trained on historical medical record data.The machine learning model implements a data-driven approach forpredicting delivery times based on complex patterns and correlations inpatient data well beyond what could be analyzed by a human or solely inthe human mind.

The delivery time prediction system enables more efficient use ofresources in a variety of ways. For instance, the delivery timeprediction system can automatically reserve resources (e.g., deliveryrooms) based on the predicted delivery times of patients, thus reducingovercrowding in healthcare facilities. As another example, the deliverytime prediction system can automatically extract patient features froman array of electronic medical record databases to aggregate a set ofpatient features to be input into the machine learning model, inparticular, without requiring manual intervention.

The details of one or more embodiments of the subject matter of thisspecification are set forth in the accompanying drawings and thedescription below. Other features, aspects, and advantages of thesubject matter will become apparent from the description, the drawings,and the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an example delivery time prediction system.

FIG. 2 is a flow diagram of an example process for predicting an amountof time until a patient gives birth.

FIG. 3 is a sample table for results from a multiple linear regressionof historical patient data.

FIG. 4 is a flow chart illustrating one exemplary embodiment of thedisclosed techniques.

FIG. 5 is another flow chart illustrating another exemplary embodimentof the disclosed techniques.

FIG. 6 is an illustration of an electronic device for implementing theexemplary embodiments.

Like reference numbers and designations in the various drawings indicatelike elements

DETAILED DESCRIPTION

FIG. 1 shows an example delivery time prediction system 100. Thedelivery time prediction system 100 is an example of a systemimplemented as computer programs on one or more computers in one or morelocations in which the systems, components, and techniques describedbelow are implemented.

The system 100 is configured to receive a request 102 to generate aprediction characterizing an amount of time until a pregnant patientgives birth, e.g., through vaginal delivery (by giving birth throughtheir vagina).

In response to receiving the request 102, the system 100 generates apredicted delivery time 116 that characterizes the amount of time untilthe patient gives birth.

The predicted delivery time 116 can characterize the amount of timeuntil the patient gives birth in a variety of possible ways. Forinstance, the predicted delivery time 116 can predict an amount of timeuntil the patient gives birth after the patient is admitted to thehospital. As another example, the predicted delivery time 116 canpredict an amount of time until the patient gives birth after thepatient enters into labor. As another example, the predicted deliverytime 116 can predict an amount of time until the patient gives birthafter the cervix of the patient dilates by a predefined amount, e.g., 1cm, 2 cm, 5 cm, or any other appropriate amount. As another example, thepredicted delivery time 116 can predict an amount of time until thepatient gives birth measured from the current time, e.g., the time thatthe system 100 receives the request 102 to generate the prediction 116.More generally, the predicted delivery time 116 can characterize apredicted amount of time between: (i) a designated event prior to thepatient giving birth, and (ii) the patient giving birth. In some cases,rather than specifying a particular time, the predicted delivery time116 can specify a range of possible times, e.g., 60 minutes-90 minutes,or 8 hours-9 hours, until the patient gives birth.

The predicted delivery time 116 can be represented in any of a varietyof appropriate formats. For instance, the predicted delivery time 116can be represented as an absolute time, e.g., “10:13 PM today”, or as arelative time, e.g., “5 hours and 7 minutes from the present time”.

The system 100 generates the predicted delivery time 116 using a featuregeneration engine 104 and a delivery time machine learning model 114,which are each described next.

The feature generation engine 104 is configured generate a set ofpatient features 108 characterizing the patient, e.g., in response tothe system 100 receiving a request 102 to generate a predicted deliverytime. (Patient features can also be referred to as patient properties orpatient characteristics). The patient features 108 can characterize anyappropriate aspect of the patient. The patient features 108 can include,e.g., demographic features (e.g., characterizing the age, gender, race,etc., of the patient), features of the medical history of the patient(e.g., the number of times the patient has given birth previously),features characterizing the fetus (e.g., the weight of the fetus, theposition of the fetus, any deformities of the fetus, the age of thefetus, etc.), features characterizing physical characteristics of thepatient (e.g., the weight of the patient, the body mass index (BMI) ofthe patient, the level of effacement of the patient, the dilation of thepatient, the level of consistency of the cervix of patient, etc.), orinterventions performed on the patient during pregnancy (e.g., drugsadministered to the patient, e.g., misoprostol, prostaglandin, etc.).Additional examples of patient features 108 will be described throughoutthis specification.

The feature generation engine 104 can generate the patient features 108,e.g., by obtaining data defining the patient features from one or moredatabases of electronic medical records 106. In particular, the request102 can include data specifying the identity of the patient, and thefeature generation engine 104 can query the electronic medical recorddatabases 106 to obtain features relevant to the patient. The dataspecifying the identity of the patient can include, e.g., the name ofthe patient, the birthdate of the patient, the social security number ofthe patient, a medical record number of the patient, etc.

The feature generation engine 104 can be remotely located from theelectronic medical record databases 106, and can transmit data to andreceive data from the electronic medical record databases 106 by way ofa data communications network, e.g., a local area network (LAN), a widearea network (WAN), or the internet. In particular, the featuregeneration engine 104 can query the electronic medical record databases106 for data relevant to a patient, e.g., by way of an applicationprogramming interface (API) made available by the electronic medicalrecord databases 106.

The feature generation engine 104 can query the electronic medicalrecord databases 106 for data relevant to generating a set of patientfeatures 108 for the patient. In some cases, the data received from theelectronic medical record databases 106 can be directly included in theset of patient features. In some cases, the feature generation engine104 may preprocess certain data received from the electronic medicalrecord databases 106 prior to including the data in the set of patientfeatures 108.

A few examples of techniques by which the feature generation engine 104can preprocess data received from the electronic medical recorddatabases 106 are described next.

For instance, the feature generation engine 104 can normalize andstandardize the data, e.g., by converting parts of the data to aconsistent scale, e.g., a data value representing “dilation” can beconverted to a consistent scale of measurement in centimeters.

As another example, the feature generation engine 104 can obtain acollection of multiple values of a feature from the electronic medicalrecord databases 106, determine a measure of central tendency of thefeature values, and include the measure of central tendency of thefeature values in the set of patient features 108. The collection ofmultiple feature values can be, e.g., heart rate values of the patientmeasured at 30 second intervals over a time window of 15 minutes.

The set of patient features can include any appropriate number offeatures, e.g., 10 features, 100 features, or 1000 features. The set ofpatient features 108 can be represented, e.g., as a vector, matrix, orother tensor of numerical values.

The delivery time machine learning model 114 is configured to processthe set of patient features 108, in accordance with values of a set ofmodel parameters 112, to generate the predicted delivery time 116 forthe patient.

The machine learning model 114 can be any appropriate model, having aset of learnable model parameters, that can be configured to process aset of patient features 108 to generate a predicted delivery time 116.For instance, the delivery time machine learning model 114 can include a(multi-)linear regression model (as will be described in more detailbelow), a random forest model, a support vector machine (SVM) model, aneural network model, or a combination thereof.

The delivery time machine learning model 114 can be associated with aset of hyper-parameters, e.g., that define aspects of the architectureor structure of the delivery time machine learning model 114.

For instance, if the delivery time machine learning model 114 isimplemented as a neural network, then the delivery time machine learningmodel 114 can be associated with hyper-parameters that define the typesof neural network layers included in the neural network (e.g., fullyconnected layers, convolutional layers, attention layers, etc.), thenumber of neural network layers included in the neural network (e.g., 5layers, 10 layers, or 50 layers), and the connectivity of the neuralnetwork layers included in the neural network.

As another example, if the delivery time machine learning model 114 isimplemented as a random forest, then the delivery time machine learningmodel 114 can be associated with hyper-parameters that define the numberof decision trees in the random forest, the depth of each decision tree,etc.

Generally, the hyper-parameters associated with the delivery timemachine learning model 114 can have any appropriate values, e.g., suchthat the delivery time machine learning model 114 can have anyappropriate architecture and structure.

The delivery time machine learning model 114 can generate machinelearning model outputs having a variety of possible formats. Forinstance, the delivery time machine learning model 114 can be configuredto perform regression, in particular, by directly outputting a predicteddelivery time selected from a continuous range of possible deliverytimes, e.g., the continuous range of 0 hours to 100 hours. As anotherexample, the delivery time machine learning model 114 can be configuredto generate a score distribution over a set of possible time ranges, inparticular, by generating a respective score for each time range in theset of possible time ranges. The set of possible time ranges can be,e.g., 1 minute-30 minutes, 31 minutes-60 minutes, 61 minutes to 90minutes, etc. In this example, the delivery time machine learning model114 can select a particular time range, e.g., that is associated withthe highest score from among the set of possible time ranges, and outputthe selected time range as the predicted delivery time 116.

Optionally, in addition to generating the predicted delivery time 116,the system 100 can further generate a confidence estimate thatcharacterizes a confidence of the delivery time machine learning model114 in the predicted delivery time 116. The confidence estimate can berepresented, e.g., as a numerical value in the range [0,1], where highervalues can represent a higher confidence in the prediction for thedelivery time. The system 100 can generate a confidence estimate in anyappropriate manner. For instance, if the delivery time machine learningmodel 114 generates a score distribution over a set of possible timeranges (as described above), then the system 100 can generate theconfidence estimate as the score assigned to the selected time range, oras the entropy of the score distribution. A confidence estimate canenable a user of the system 100 to judge the reliability of thepredicted delivery time 116, and to incorporate the reliability of thepredicted delivery time 116 into clinical decision making.

Optionally, in addition to generating the predicted delivery time 116,the system 100 can further generate a respective importance score foreach feature in the set of patient features 108. An importance score fora feature can measure the impact of the feature on the predicteddelivery time 116 generated by the delivery time machine learning model114 for a patient. The system 100 can generate the importance scoresusing any appropriate technique. For instance, the importance scores canbe, e.g., “SNAP” values (“Shapley additive explanations”), or “LIME”values (“local interpretable model-agnostic explanations”). The system100 can make the importance scores (or data derived from the importancescores) available to the user, e.g., to enable the user to interpretwhich patient features had the greatest impact on the delivery timeprediction 116.

In some implementations, the feature generation engine 104 canrepeatedly update the set of patient features 108 characterizing thepatient, e.g., to update the values of dynamic patient features thatchange over time. Each time the feature generation engine 104 generatesan updated set of patient features 108, the delivery time machinelearning model 114 can process the updated set of patient features 108to generate an updated predicted delivery time 116. The delivery timemachine learning model 114 may generate predicted delivery times 116with higher accuracy as the set of patient features is updated toinclude more recent patient features.

The feature generation engine 104 can update the set of patient features108 by re-querying the electronic medical record databases 106 to obtainupdated values of the features included in the set of features. Thefeature generation engine 104 can update the set of patient features 108(and provide the updated set of patient features 108 to the machinelearning model 114 for use in generating an updated predicted deliverytime 116) in response to determining that one or more update criteriaare satisfied.

The feature generation engine 104 can be configured to update the set ofpatient features 108 in response to determining that any appropriateupdate criteria are satisfied. For instance, the feature generationengine 104 can update the set of patient features at fixed intervals oftime, e.g., every 10 minutes. As another example, the feature generationengine 104 can scan the electronic medical record databases 106 at fixedintervals of time to determine whether the values of any of the patientfeatures 108 have changed (e.g., by at least a threshold amount). Inresponse to determining that the values of one or more patient features108 have changed (e.g., by at least a threshold amount), the featuregeneration engine 104 can generate an updated set of patient features108, and provide the updated set of patient features 108 to the deliverytime machine learning model 114.

Patient data stored in the electronic medical record databases 106 canchange over time, e.g., as the physical state of the patient changesover time. For instance, the dilation rate of the patient, the positionof the fetus, consistency of the cervix and the like can over time asthe delivery time draws closer.

The patient data stored in the electronic medical record databases 106(i.e., which the feature generation engine 104 accesses to the generatethe set of patient features 108) can be modified manually orautomatically over time.

For instance, the patient data stored in the electronic medical recorddatabases 106 can be manually updated by healthcare providers, e.g.,based on physical examination of the patient. Healthcare providers canmanually update the patient data stored in the electronic medical recorddatabases 106, e.g., through one or more portals made available by theelectronic medical record databases 106.

As another example, the patient data stored in the electronic medicalrecord databases 106 can be automatically updated over time. Inparticular, one or more devices or sensors can automatically generatefeatures characterizing physiological parameters of the patient andstore the generated features in the electronic medical record databases106. In one example, a wearable device, e.g., a smartwatch or smartwristband, can measure physiological parameters such as heart rate,systolic blood pressure, diastolic blood pressure, and store themeasured physiological parameters as feature values in the electronicmedical record databases 106. As another example, a body-mounted sensorcan measure physiological parameters such as glucose levels or hormonelevels in the blood of the patient, or fetal heart rate, or pressure ofcontractions, and store the measured physiological parameters as featurevalues in the electronic medical record databases 106. As anotherexample, a sensor (e.g., mounted on a machine in proximity to thepatient) can be measure features such as a rate at which medication isbeing administered to the patient (e.g., intravenously, using atitration pump). The devices or sensors can transmit the feature valuesfor storage in the electronic medical records databases 106 by way of adata communications network, e.g., a local area network (LAN), a widearea network (WAN), or the internet. (The system 100 can thus processdata generated by one or more sensors to generate a medical diagnosis,in particular, a medical diagnosis defining a predicted time to vaginaldelivery of an infant).

The system 100 can use the predicted delivery times 116 generated by thedelivery time machine learning model 114 in any of a variety of possibleways. A few examples applications of the predicted delivery times 116are described next.

In some implementations, the system 100 can provide the predicteddelivery times 116 to a healthcare provider, e.g., a physician, for usein planning clinical care for the patient. The system 100 can providethe predicted delivery times 116 to the healthcare provider, e.g., byway of a text message, a notification through an application, or in anyother appropriate manner.

In some implementations, the system 100 can provide the predicteddelivery times 116 to the patient, e.g., to allow the patient to plan onarriving at a healthcare facility at an appropriate time prior to givingbirth. The system 100 can provide the predicted delivery times 116 tothe patient, e.g., by way of a text message, a notification through anapplication, or in any other appropriate manner.

In some implementations, the system 100 can use the predicted deliverytime 116 to automatically reserve resources in a healthcare facility. Inparticular, the system 100 can automatically reserve resources in thehealthcare facility to ensure the resources are available when thepatient is predicted to give birth, i.e., according to the predicteddelivery time. For instance, the system 100 can automatically reserveone or more delivery rooms at a healthcare facility in a window of timebased on the predicted delivery time 116. As another example, the system100 can automatically schedule one or more healthcare providers (e.g.,nurses or physicians) to be available in a window of time based on thepredicted delivery time 116. The system 100 can reserve resources byinterfacing with an appropriate resource reservation system, e.g., adelivery room reservation system, a staff scheduling system, or like.

In some implementations, after generating a predicted delivery time 116,the system 100 can monitor the electronic medical record databases 106to determine if the patient gives birth within a threshold amount oftime after the predicted delivery time 116. In response to determiningthat the patient has not given birth within the threshold amount of timeafter the predicted delivery time 116, the system 100 can automaticallygenerate a notification. The system 100 can provide the notification,e.g., to a healthcare provider, e.g., by way of a text message, orthrough a notification in an application, or in any other appropriatemanner.

The system 100 includes a training engine 110 that trains the modelparameters 112 of the delivery time machine learning model 114 on a setof training examples. Each training example can include: (i) a traininginput to the delivery time machine learning model 114, including a setof patient features, and (ii) a target delivery time that should begenerated by the delivery time machine learning model 114 by processingthe training input. Each training example can be generated, e.g., basedon electronic medical records for a patients that previously deliveredinfants.

The training engine 110 trains the delivery time machine learning modelon the set of training examples using an appropriate machine learningtraining technique. In particular, for each training example, thetraining engine 110 modifies the values of the model parameters 112 ofthe delivery time machine learning model 114 to encourage the machinelearning model to generate the target delivery time of the trainingexample in response to processing the training input of the trainingexample. More specifically, the training engine 110 modifies the valuesof the model parameters 112 of the delivery time machine learning model114 to (approximately) minimize an error between: (i) the predicteddelivery times 116 generated by the delivery time machine learning model114, and (ii) the corresponding target delivery times specified by thetraining examples. The training engine 110 can measure the error betweenpredicted delivery times and target delivery times using any appropriateerror measure, e.g., a squared-error measure, or a cross-entropy errormeasure.

The training engine 110 can implement any machine learning trainingtechnique appropriate for training the delivery time machine learningmodel 114. For instance, for a delivery time machine learning model 114implemented as a neural network, the training engine 110 can implement astochastic gradient descent training technique. As another example, fora delivery time machine learning model 114 implemented as a linearregression model, the training engine 110 can implement a least-squaresminimization training technique.

The training engine 110 can repeatedly update the model parameters 112of the delivery time machine learning model, e.g., as new trainingexamples become available. The training engine 110 can obtain newtraining examples, e.g., by monitoring the electronic medical recorddatabases 106 to determine when data has been added to the electronicmedical record databases which would enable generation of one or morenew training examples. The training engine 110 can generate a trainingexample by processing data extracted from the electronic medical recorddatabases 106 to generate: (i) a training input to the delivery timemachine learning model, including patient features characterizing apregnant patient, and (ii) an actual delivery time of patient. Thetraining engine 110 can update the model parameters of the delivery timemachine learning model in response to determining that any appropriatecriterion has been satisfied, e.g., in response to determining that atleast as threshold number of new training examples have become availablesince the delivery time machine learning model was last trained.

In some implementations, the system 100 includes multiple delivery timemachine learning models 114, i.e., rather than a single delivery timemachine learning model 114. Each delivery time machine learning model114 can have a respective set of model parameters 112 having differentvalues than the model parameters 112 of each other delivery time machinelearning model 114.

Each delivery time machine learning model can be specialized throughtraining to generate predicted delivery times 116 for certain patientcategories. In one example, the set of patient categories can include:(i) patients whose membranes have ruptured, and (ii) patients whosemembranes have not ruptured. As another example, the set of patientcategories can include: (i) a category for patients who have notreceived an intervention, and (ii) a respective patient category foreach intervention in a set of interventions, where a patient is includedin the category for an intervention if the patient has received theintervention. An “intervention” can refer to, e.g., the administrationof a drug or medical procedure, e.g., an epidural, an induction, anaugmentation, etc.

To generate a predicted delivery time 116 for a patient, the system 100can determine a patient category for the patient based on the set ofpatient features 108, and then generate the predicted delivery timeusing the delivery time machine learning model associated with thepatient category.

Each delivery time machine learning model 114 can be trained primarily(or totally) on training examples corresponding to patients included inthe patient category associated with the delivery time machine learningmodel 114. Thus each delivery time machine learning model 114 can bespecialized through training to generate accurate predictions forcertain categories of patients.

FIG. 2 is a flow diagram of an example process 200 for predicting a timeto vaginal delivery of an infant by a patient. For convenience, theprocess 200 will be described as being performed by a system of one ormore computers located in one or more locations. For example, a deliverytime prediction system, e.g., the delivery time prediction system 100 ofFIG. 1 , appropriately programmed in accordance with this specification,can perform the process 200.

The system receives a request to predict a time to vaginal delivery ofan infant by a patient (202). The request can be generated, e.g., by auser of the system, or automatically generated, e.g., on a predefinedschedule.

The system obtains patient data characterizing the patient (204). Forinstance, the system can obtain the patient data by querying one or moredatabases of electronic medical records. The patient data characterizingthe patient can include a set of patient features.

The system inputs the patient data characterizing the patient into adelivery time machine learning model (206).

The system predicts the time to vaginal delivery of the infant using thedelivery time machine learning model and the patient data inputted intothe delivery time machine learning model (208). For instance, the systemcan process the patient data in accordance with values of a set of modelparameters of the machine learning model to generate a prediction forthe time to vaginal delivery of the infant.

The remainder of this specification further describes various possibleimplementations and aspects of the delivery time prediction system 100.

A better understanding of the expected time from admission to a vaginaldelivery is required in order to facilitate a reduction in bothunnecessary interventions during birth and the rate of primary cesareandeliveries. Consequently, the exemplary embodiments provide a processfor health care providers and pregnant women that would provide theexpected time from admission to the hospital to vaginal delivery of theinfant.

A retrospective study was performed which reviewed over 70,000 patientcharts and extracted each patient's examination and demographics (e.g.,to generate a training example). The data was then used to develop(e.g., train) a multilinear regression model (e.g., as one exampleimplementation of a delivery time machine learning model) to predict theexpected time from admission to the hospital to vaginal delivery of theinfant. A further objective is to optimize the admission time ofpatients for induction of labor, augmentation of labor or in spontaneouslabor in regards to staffing and room availability.

Data was to be collected from patient's charts as provided by theMedical Records Department and the Cerner Powerchart EMR and EpicSystems (e.g., as examples of electronic medical record databases). Asfurther examples, data can be collected from systems such as, e.g.,inpatient EMR databases, outpatient EMR databases, etc. Data includedbut was not limited to the patients' hospital, cervical examination,gestational age, maternal age, presence of rupture of membranes, time ofrupture of membranes, preeclampsia, chorioamnionitis, race, BMI,presence of epidural analgesia, the use of augmentation of labor, thetime of starting augmentations, the use of cervical ripening agents, thetime of starting cervical ripening agents, and birthweight of infant.(In some implementations, some or all of the described data is includedin the patient features 108).

The patients studied were pregnant women who were between the ages of 12to 55 years old. Inclusion criteria comprised early term to full term(37 weeks, 0 days to 41 weeks 6 days), vaginal delivery (CPT 59400 and59409), Vaginal Birth after Cesarean Delivery (VBAC) (CPT 59618, 59620,59622), Operative Delivery using Forceps/Vacuum (CPT 59409), singletongestation and vertex (cephalic presentation) of fetus on admission.

Patients excluded exhibited criteria including preterm pregnancy,post-term pregnancy, operative vaginal deliveries, cesarean deliveries,intrauterine fetal demise, deliveries performed outside of a labor anddelivery unit, multiple fetal gestation, patients without an examinationon admission, patients without accurate gestational age dating, womenless than 12 years old or greater than 55 years old, non-vertexpresentation of fetus on admission, patients who had external cephalicversion, shoulder dystocia on delivery on infant and patients with birthtraumas.

The data collected was analyzed using t-test and multi-linear regressionmodel (e.g., as an example of a delivery time machine learning model).The data was also tested using logistic regression, decision tree, SVMalgorithm, Naïve Bayes algorithm, KNN algorithm, K-means, Random forestalgorithm, Dimensionality reduction algorithms, AdaBoosting algorithmand/or Gradient boosting algorithm (e.g., as examples of possibledelivery time machine learning models). This compared the results fromthe patients' cervical examinations, characteristics of the studypopulation, birthweights of the infants, and time from admission orstart of induction of labor until vaginal delivery.

More particularly, factors analyzed included the following:

-   -   Dilation: dilation of the cervix    -   Effacement: thickness of the cervix    -   Fetal Station: the position of the infant's head in relation to        the pelvis    -   Position: position of cervix (posterior, middle or anterior)    -   Consistency of cervix: feeling of cervix—firm, soft or in        between    -   Prior deliveries: number of prior deliveries of patient    -   Cervical consistency: any medication to soften cervix and the        times of each medication    -   Augmentation of labor: medicine to move labor along such as        Pitocin    -   BMI: body mass index of patient    -   Maternal age: age of patient    -   Epidural analgesia: whether patient has been given an epidural        or not for pain and the time of administration of the epidural    -   Race: race of patient    -   Existence of preeclampsia: existence of high blood pressure    -   Gestational age: number of weeks that patient is pregnant—37        weeks to 41 weeks and 6 days    -   Chorioamnionitis: presence of infection of uterus and if        antibiotics administered    -   Fetal weight: the weight of the infant is an estimate which may        be obtained from an ultrasound or Leopold's maneuver before the        baby is delivered.

The patient features 108 described with reference to FIG. 1 can includesome or all of the factors listed above.

The disclosed subject matter is directed to systems,computer-implemented methods, apparatus and/or computer program productsthat provide for managing an induction of labor, augmentation of laborand spontaneous labor and the intrapartum labor course using artificialintelligence (AI) analytics to facilitate more accurate predictions ofthe time to delivery of an infant, decreasing primary cesarean deliveryrates and planning staffing of the labor and delivery unit. Thedisclosed techniques for predicting the time to delivery of an infantare designed to facilitate determining which patients require inductionsof labor with cervical ripening, augmentation of labor, epiduralplacement, the timing when patients should be scheduled to arrive to thehospital, the timing when the delivering physician should arrive to thehospital, the number of nurses needed to staff the Labor and Deliveryunits, the number of hours a patient will occupy a Labor and Deliveryroom and provide an end goal for the expected time to delivery of theinfant for patients to stay motivated during their intrapartum course.This will empower providers and nurses to take a holistic approach,using technology and people to address labor management.

In one or more embodiments, the disclosed techniques employ machinelearning (ML) analysis of historical patients' admission data, patients'demographics and patients' intrapartum course for different patientgroups and institutions as well as clinical domain knowledge (e.g.clinical standards, textbook clinical protocols and teaching materials,expert practitioner feedback, etc.) to provide an accurate analysis thatmeasures and benchmarks the time to delivery of an infant andhistorically used Bishop Score system for a particular patientpopulation. In addition, the disclosed application provides afull-service, real-time solution to aid healthcare organizations inextracting, organizing, reporting and translating pregnancy delivery andelectronic medical record (EMR) data into actionable clinical practicesto improve quality of care (through standardization and per patienttailoring) and drive economic and medical efficiency.

Thus, while one exemplary embodiment may be on an HTM, JAVA, Android oriOS platform for access by medical professionals another exemplaryembodiment may link with EMR data to both retrieve patient data andinput patient data to the EMR source.

The DTA can integrate and interface with the patient's EMR to providethe estimated time to delivery, Bishop score and decision trees toproviders, thereby promoting evidence-based clinical practice. (The DTAcan refer to some or all of the operations implemented by the deliverytime prediction system 100 described with reference to FIG. 1 ). The DTAmay pull populated clinical data directly from patients' electronicmedical records using electronic medical records systems such as SMARTHealth IT, Clinical Decision Support Systems (CDSS), LOINC (LogicalObservation Identifiers Names and Codes), the HL7 (Health Line Seven)interface engine, HL7 FHIR (Fast Healthcare Interoperability Resources),Integrating the Healthcare Enterprise's (IHE's) Cross-EnterpriseDocument Sharing (XDS), C-CDA (HL7 Consolidated Clinical DocumentArchitecture), Patient Identifier Cross-Referencing/Patient DemographicsQuery (PIX/PDQ), Laboratory (LAB), Audit Trail and Node Authentication(ATNA) and Digital Imaging and Communications in Medicine (DICOM) (e.g.,by way of the feature generation engine described with reference to FIG.1 ). The data may then be integrated into the DTA's calculators andapplication and provide a predicted time to delivery to the patient'sEMR.

As an example, SMART Health IT is an open, standards-based technologyplatform that enables innovators to create apps that seamlessly andsecurely run across the healthcare system. Using an electronic healthrecord (EHR) system or data warehouse that supports the SMART standard,patients, doctors, and healthcare practitioners can draw on this libraryof apps to improve clinical care, research, and public health.

The SMART platform is composed of open standards, open source tools fordevelopers building apps and a publicly accessible app gallery. To date,dozens of clinical applications have been built on this platform, andSMART applications are being used to provide clinical care at healthcareinstitutions.

The predicted time to delivery resulting from the DTA may be providedback to the EMR using these electronic medical record systems.

With the information provided from the DTA, the patient's EMR willprovide user functionality to trigger clinical decision tools includingpreparing the operating room for a possible cesarean section, suggestingcervical ripening agents for induction of labor, suggesting theinitiation of labor augmentation using oxytocin and other decisionmaking trees. The user functionality will also allow for a plug-and-playcloud-based integration platform that facilitates rapid provision ofdata that will interface with the DTA to provide the endpoints for theestimated time to delivery and bishop score. The SMART on FHIR API(application programming interface) will allow for an open andstandards-based API which will allow the DTA to run anywhere in thehealthcare system.

The disclosed labor management techniques were developed with some keydrivers in mind. The key drivers include, but are not limited to, theneed to (1) clearly define induction of labor, natural labor andaugmentation of labor standards and appropriateness exceptions, (2)ensure that there is staff knowledge in the labor and admission standardexpectations, (3) ensure that there is staff knowledge in the cervicaland pelvic examination of patients, (4) develop a measurement systemthat can be filtered by examinations, admission criteria, demographics,intrapartum interventions, providers, facility, actual time to deliveryof infant, etc., (5) ensure that staff and patients are aware of theprocess and outcome measurements, and (6) continual learning throughcase reviews and updated pregnancy-related guidelines as released byACOG (American College of Obstetricians and Gynecologists), AmericanJournal of Obstetrics and Gynecology, Society for Maternal and FetalMedicine, National Center for Health Statistics, Hospital-relatedguidelines and other related publications.

The present teaching is built on the premise that cesarean deliverydecisions for labor dystocia (the abnormal progression of the stages oflabor) and that the estimated time to delivery are influenced byevidence-based knowledge that accounts for individual patient variables,and not solely on provider preference or behavior. This is accomplishedin part through the development and application of a delivery timeprediction system 100 that computes the time to delivery of infants byfactoring evidenced-based knowledge (patient demographics, pelvic andphysical examination, estimated fetal weighs, records of similarpatients' outcomes, risk factors, other comorbidities, etc.) and inputfrom practitioners in obstetrics. The ML model/algorithm is referred toherein as the Delivery Time Algorithm (DTA) (delivery time predictionsystem 100).

In addition to determining the time to delivery of an infant and BishopScore based on the cervical examination, the evidence based knowledgeand input used by the DTA may also be critical in determining who shouldhave a cesarean delivery, viable candidates for a normal spontaneousvaginal delivery, and/or the maximum number of hours a provider canexpect for a patient to have a safe normal spontaneous vaginal delivery.In this regard, through the use of the DTA, the disclosed techniques canreduce primary cesarean delivery rates, allow physicians to scheduletheir patients based on the expected time to delivery, plan an on-callday, decrease the cesarean section rates for labor dystocia and maternalrequests. The nurse managers and nurses are able to determine the numberof nurses needed to staff a Labor and Delivery unit and allocatepatients to rooms based on the time to delivery. Patients are able toutilize the DTA to have an end goal and decrease the uncertainty of thelabor process.

In one or more embodiments, the disclosed systems can mine and correlatedata from multiple data sources (e.g., EMRs, labor and delivery charts,prenatal records, surgical systems, financial systems) to determine theexpected time to delivery for individual patients and different patientgroups. The expected time to delivery and Bishop Score can be outputs(results) presented to care providers as scientific-based evidence indetermining how to proceed with labor-related cases (e.g., cervicalripening, induction of labor, augmentation of labor and natural labor).In some examples, the results of the DTA can be integrated with andvisualized within the dashboard of the provider's EMR, allowing theprovider to make intelligent decisions at the point of care. Informationregarding the inferred risks and expected outcomes can also beincorporated into the ML process so that the DTA can be adjusted to moreclosely reflect the expected outcomes and risks. In someimplementations, the disclosed techniques can further apply the resultsof the DTA to predict a provider's schedule, staffing requirements andcosts of the infant's delivery depending on route (vaginal delivery orcesarean delivery). These cost related metrics can also be viewed in thedashboard and utilized to further evaluate the cost of delivery of theinfant.

In yet another embodiment, labor-related data that is determined via theapplication of the DTA can be used to determine staffing requirements inreal-time (e.g., physicians, physician assistants (PAs), nurses (RNs),etc.). In this regard, information regarding expected time to deliverypertaining to a particular patient can be used to determine how toallocate staff in real-time. The guidelines and staffing can be adjustedto account for the new insights provided by the DTA based on data frommany different locations, regions and patient populations. The systemcan also determine the expected staff demands and automatically adjuststaffing and patient scheduling to improve patient care while minimizinga waste of staffing resources.

In various embodiments, the patient data includes information for apatient that is a potential candidate for a normal spontaneous vaginaldelivery, operative vaginal delivery using vacuum or forceps, or vaginalbirth after cesarean delivery and includes a variety of rich informationabout the patient that can influence on a per patient basis with respectto their tailored criteria, the estimated time to vaginal delivery of aninfant. The delivery time analysis can further process the patient datausing one or more ML and AI tactics to evaluate the appropriateness ofcervical ripening, induction of labor and augmentation of labor, andprovide a recommendation regarding whether to proceed with a trial oflabor and/or the estimated time to delivery.

The patient data (patient features 108) can include informationregarding the current clinical state, status and/or condition of thepatient and the current course of treatment of the patient. Suchinformation can include, but is not limited to: diagnosis information(e.g., any current clinical diagnosis of the patient condition bydiagnosis code, diagnosis related group (DRG) etc.), patient'sgestational age, patient's age, patient's race, patient's priorpregnancy history including parity, clinical examination (vitals,relevant laboratory measures, physical examinations), reason foradmittance, location of admittance, current course of treatment/care(e.g., including whether the patient is receiving interventions forcervical consistency such as a cervical foley catheter, Misoprostol,Dinoprostone, oxytocin, etc.), the type of medications administered foraugmentation of labor, whether epidural analgesia was administered,antibiotics given for prophylaxis of Group Beta Strep colonization, etc.Information regarding clinical examination can include but is notlimited to cervical dilation, cervical effacement, fetal station,cervical consistency and cervical position. The patient data can alsoinclude real-time physiological information capture for a patientregarding monitored/reported vital signs, including but not limited to:heart rate, respiratory rate, temperature, systolic blood pressure,diastolic blood pressure, and other biomedical/physiologic status datathat can be captured and/or monitored for a patient in real-time (e.g.,via one of more medical monitoring devices, fetal heart rate monitoring,tocometers, fetal scalp electrode and implantable medical devices (IMDs,and the like). In various implementations, these physiologic parameterscan include real-time measures tracked and received for the patient overa period of time and thus provide a measure of changes in thephysiological parameters over the course of the patient's care.

The patient data (patient features 108) can also include relevantmedical history information for a patient. For example, the relevantmedical history information can include information regarding underlyingconditions/comorbidities (e.g., preeclampsia, chorioamnionitis,diabetes, anemia, and other relevant comorbidities), past treatments,past procedures/surgeries (e.g., prior cesarean deliveries, priortermination of pregnancies, prior miscarriages, cerclage placement andremoval, and information regarding location, timing and type ofprocedures), past diagnosis, family history, known allergies, pastlaboratory tests and associated results/reports and past imaging studiesand associated results/reports. In various embodiments, the medicalhistory information can be extracted from one or more EMRs and/orelectronic health records (EHRs) for the patient.

In various embodiments, the reception component can regularly and/orcontinuously receive the various types of patient data discussed abovefrom a variety of patient data systems/sources in real-time. Forexample, the reception component can receive the patient informationfrom one or more from EMR systems, scheduling systems, blood banks,admission systems, financial systems, insurance systems, coding systems,physician notes/reports, laboratory report systems, imaging systems,case worker reports, case status tracking systems, patient locationtracking systems/devices, patient vital signs monitoring systems,medical monitoring devices associated with the patients, and the like.In some implementations, these tracking and/or monitoringsystems/devices can include systems/devices configured to receive andreport user input in real-time explicitly identifying and/or indicatingsuch status information (e.g., regarding the patient's active casestatus, location, workflow event progress, staff involved, etc.). Thesetracking and/or monitoring systems/devices can also include intelligentsystems/devices configured to determine and report various real-timestatus information without or with minimal manual input based onanalysis of sensor/device captured data signals. For example, thesetracking and/or monitoring systems/devices can also includesystems/devices configured determine information regarding what'scurrently happening to the patient (e.g., workflow events), where thepatient is currently located, who is currently treating/attending to thepatient, and the like based on analysis of a variety of captured data,including but not limited to: image data (e.g., using object recognitionand/or other image pattern recognition technologies), audio data (e.g.,using speech to text and natural language processing NPL), motion sensordata (e.g., using motion pattern recognition technology), radiofrequency (RF) data, temperature sensor data, light sensor data,infrared (IR) senor data, biometric sensor data, and the like.

In this regard, the reception component can collect, extract orotherwise receive patient data continuously and/or regularly over thecourse of operation of a medical system/facility as the patient data isgenerated by and/or entered into the one or more current state datasystems/sources. For example, in some implementations, the receptioncomponent can repeatedly extract, collect or otherwise receive patientdata for all or specific patients and/or patient groups according to adefined schedule (e.g., every second, every few seconds, every minute,every five minutes, every ten minutes, etc.). In other implementations,the reception component can receive (e.g., in a push fashion) patientdata reflecting any changes to the current state of a patient as theyoccur (e.g., in response to entry into and/or generation by the one ormore current state data sources/systems).

In some implementations, as noted previously, the DTA is derived frommultiple linear regression. Regression models are used to describerelationships between variables by fitting a line to the observed data.Regression allows you to estimate how a dependent variable changes asthe independent variable(s) change.

Multiple linear regression is used to estimate the relationship betweentwo or more independent variables and one dependent variable. You canuse multiple linear regression when you want to know:

How strong the relationship is between two or more independent variablesand one dependent variable and/or

The value of the dependent variable at a certain value of theindependent variables.

The formula for a multiple linear regression is:

Y=β0+β1X1+ . . . +βnXn+ε

whereY=the predicted value of the dependent variableβ0=the y-intercept of the regression equation (value of y when all otherparameters are set to 0)β1X1=the regression coefficient (β1) of the first independent variable(X1) (a.k.a. the effect that increasing the value of the independentvariable has on the predicted y value). . .βnXn=the regression coefficient of the last independent variableε=model error (e.g., how much variation there is in our estimate of y).

To find the best-fit line for each independent variable, multiple linearregression calculates three things:

-   -   The regression coefficients that lead to the smallest overall        model error.    -   The t-statistic of the overall model.    -   The associated p-value (how likely it is that the t-statistic        would have occurred by chance if the null hypothesis of no        relationship between the independent and dependent variables was        true).        It then calculates the t-statistic and p-value for each        regression coefficient in the model.

A sample table for results from a multiple linear regression ofhistorical patient data is illustrated in FIG. 3 where the coefficientis the regression coefficient, the standard error column displays thestandard error of the estimate of the regression coefficient, the tvalue column displays the test statistic and the p-value. The resultsare not actually shown in this table.

In the exemplary embodiments, the dependent variable is the time todelivery of the infant during vaginal delivery, which is now the DTA.For purposes of the DTA in the exemplary embodiments, the y interceptand the model error have been combined and just appear as the yintercept.

In some implementations, the full DTA may appear as follows:

DTA=β0+(dilation×β1X1)+(effacement×β2X2)+(fetalstation×β3X3)+(position×β4X4)+(consistency×β5X5)+(priordeliveries×β6X6)+(cervicalconsistency×β7X7)+(augmentation×β8X8)+(BMI×β9X9)+(maternalage×β10X10)+(epiduralanalgesia×β11X11)+(race×β12X12)+(preeclampsia×β13X13).

Measurements obtained from EMR, hospital records, admission informationand other sources for each of dilation, effacement, fetal station,position, consistency, prior deliveries, cervical ripening,augmentation, BMI, maternal age, epidural analgesia, race andpreeclampsia would be inserted in the DTA. If the factors of gestationalage, chorioamnionitis and fetal weight become statistically significantthen measurements for each of gestational age, chorioamnionitis andfetal weight along with their regression coefficients would be includedin the DTA.

Referring to FIG. 4 , there is illustrated an exemplary embodiment of amethod of predicting the time for vaginal delivery which includescollecting historical patient data from past patients pertaining tovaginal delivery of an infant, box 10. The historical patient datarefers to the collected patient data from the retrospective studydiscussed above. The patient data from the present patient may also beadded to the historical patient data since the historical patient datamay be updated to include present and future patent data as well as pastpatient data.

Then, determining factors of a plurality of factors that arestatistically significant with respect to time to vaginal delivery ofthe infant, box 12. The factors may be those shown in FIG. 1 which maybe statistically significant. As noted previously, the gestational age,chorioamnionitis and fetal weight factors may not be statisticallysignificant. In future iterations, one or more of the factors shown inFIG. 1 may become statistically insignificant. A factor can be said tobe statistically significant with respect to time to vaginal delivery ofthe infant, e.g., if a significance factor derived from a statisticalsignificance test satisfies a threshold. For instance, the significancefactor can be a p-value, and the threshold can be 0.05.

In a next step, determining relationships between the factors that arestatistically significant, box 14.

In a further step of the process, estimating how the time to vaginaldelivery of the infant changes as each of the statistically significantfactors change, box 16.

In the next step, deriving a delivery time algorithm (DTA) to predict anexpected time to vaginal delivery of the infant using the statisticallysignificant factors, box 18.

In one preferred exemplary embodiment, the method may loop back tocollecting historical patient data to either continually orintermittently update the historical patient data collected, box 20.

In some implementations, the DTA may be derived using the multiplelinear regression discussed above.

Referring to FIG. 5 , there is illustrated another exemplary embodimentof a method of predicting the time to vaginal delivery of an infantwhich includes inputting patient data for a pregnant patient into a DTA,box 22.

In a further step, there is included the step of predicting the time tovaginal delivery of the infant using the DTA and the patient datainputted into the DTA, box 24.

Based on using the DTA in practice with over 500 patients, the DTA hasbeen found to accurately predict time to vaginal delivery of an infantto within 1.75 hours of actual vaginal delivery. It is expected thatwith further use and analysis in conjunction with pregnant patients, thediscrepancy between actual vaginal delivery and the DTA predicted timeto vaginal delivery may be reduced.

Referring now to FIG. 6 , there is shown an electronic device 26 forimplementing the exemplary embodiments. The electronic device 26 mayinclude a central processing unit (CPU) 28 having memory 30.

Further contained within electronic device 26 may be storage 32.Alternatively, storage 32 may be remotely connected to electronic device26. Contained within storage 32 may be programs 34 having programinstructions to perform various tasks.

The electronic device 26 may further include communications capabilityinstructions 36 to allow electronic device 26 to communicate with theoutside world such as by WiFi, cellular, satellite, wired or short rangeradio capabilities. There may also be search engine instructions 38 tosearch the Internet and to provide browsing capability to the electronicdevice 26.

Additionally, electronic device 26 may have peripherals instructions 40to operate peripheral components such as a display, keyboard, mouse andprinter.

One or more embodiments described herein can be a system, a method, anapparatus and/or a computer program product at any possible technicaldetail level of integration. The computer program product can include acomputer readable storage medium (or media) having computer readableprogram instructions thereon for causing a processor to carry outaspects of one or more embodiment. The computer readable storage mediumcan be a tangible device that can retain and store instructions for useby an instruction execution device. The computer readable storage mediumcan be, for example, but is not limited to, an electronic storagedevice, a magnetic storage device, an optical storage device, anelectromagnetic storage device, a semiconductor storage device, or anysuitable combination of the foregoing. A non-exhaustive list of morespecific examples of the computer readable storage medium can alsoinclude the following: a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), a static randomaccess memory (SRAM), a portable compact disc read-only memory (CD-ROM),a digital versatile disk (DVD), a memory stick, a floppy disk, amechanically encoded device such as punch-cards or raised structures ina groove having instructions recorded thereon, and any suitablecombination of the foregoing. A computer readable storage medium, asused herein, is not to be construed as being transitory signals per se,such as radio waves or other freely propagating electromagnetic waves,electromagnetic waves propagating through a waveguide or othertransmission media (e.g., light pulses passing through a fiber-opticcable), or electrical signals transmitted through a wire. In thisregard, in various embodiments, a computer readable storage medium asused herein can include non-transitory and tangible computer readablestorage mediums.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network can comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device. Computer readable programinstructions for carrying out operations of one or more embodiments canbe assembler instructions, instruction-set-architecture (ISA)instructions, machine instructions, machine dependent instructions,microcode, firmware instructions, state-setting data, configuration datafor integrated circuitry, or either source code or object code writtenin any combination of one or more programming languages, including anobject oriented programming language such as Python, HTML, Smalltalk,C++, or the like, and procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions can execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer can be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection can be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) can execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of one or more embodiments.

Aspects of one or more embodiments are described herein with referenceto flowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments. Itwill be understood that each block of the flowchart illustrations and/orblock diagrams, and combinations of blocks in the flowchartillustrations and/or block diagrams, can be implemented by computerreadable program instructions. These computer readable programinstructions can be provided to a processor of a general purposecomputer, special purpose computer, or other programmable dataprocessing apparatus to produce a machine, such that the instructions,which execute via the processor of the computer or other programmabledata processing apparatus, create means for implementing thefunctions/acts specified in the flowchart and/or block diagram block orblocks. These computer readable program instructions can also be storedin a computer readable storage medium that can direct a computer, aprogrammable data processing apparatus, and other devices to function ina particular manner, such that the computer readable storage mediumhaving instructions stored therein comprises an article of manufactureincluding instructions which implement aspects of the function/actspecified in the flowchart and block diagram block or blocks. Thecomputer readable program instructions can also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational acts to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and block diagram block orblocks.

While the subject matter has been described above in the general contextof computer-executable instructions of a computer program product thatruns on one or more computers, those skilled in the art will recognizethat this disclosure also can or can be implemented in combination withother program modules. Generally, program modules include routines,programs, components, data structures, etc. that perform particulartasks or implement particular abstract data types. Moreover, thoseskilled in the art will appreciate that the inventivecomputer-implemented methods can be practiced with other computer systemconfigurations, including single-processor or multiprocessor computersystems, mini-computing devices, mainframe computers, as well ascomputers, hand-held computing devices (e.g., PDA, phone),microprocessor-based or programmable consumer or industrial electronics,and the like. The illustrated aspects can also be practiced indistributed computing environments in which tasks are performed byremote processing devices that are linked through a communicationsnetwork. However, some, if not all aspects of this disclosure can bepracticed on stand-alone computers. In a distributed computingenvironment, program modules can be located in both local and remotememory storage devices. For example, in one or more embodiments,computer executable components can be executed from memory that caninclude or be comprised of one or more distributed memory units. As usedherein, the term “memory” and “memory unit” are interchangeable.Further, one or more embodiments described herein can execute code ofthe computer executable components in a distributed manner, e.g.,multiple processors combining or working cooperatively to execute codefrom one or more distributed memory units. As used herein, the term“memory” can encompass a single memory or memory unit at one location ormultiple memories or memory units at one or more locations.

As used in this application, the terms “component,” “system,”“platform,” “interface,” and the like, can refer to and can include acomputer-related entity or an entity related to an operational machinewith one or more specific functionalities. The entities disclosed hereincan be either hardware, a combination of hardware and software,software, or software in execution. For example, a component can be, butis not limited to being, a process running on a processor, a processor,an object, an executable, a thread of execution, a program, and acomputer. By way of illustration, both an application running on aserver and the server can be a component. One or more components canreside within a process or thread of execution and a component can belocalized on one computer and/or distributed between two or morecomputers. In another example, respective components can execute fromvarious computer readable media having various data structures storedthereon. The components can communicate via local and/or remoteprocesses such as in accordance with a signal having one or more datapackets (e.g., data from one component interacting with anothercomponent in a local system, distributed system, and/or across a networksuch as the Internet with other systems via the signal).

As another example, a component can be an apparatus with specificfunctionality provided by mechanical parts operated by electric orelectronic circuitry, which is operated by a software or firmwareapplication executed by a processor. In such a case, the processor canbe internal or external to the apparatus and can execute at least a partof the software or firmware application. As yet another example, acomponent can be an apparatus that can provide specific functionalitythrough electronic components without mechanical parts, wherein theelectronic components can include a processor or other means to executesoftware or firmware that confers at least in part the functionality ofthe electronic components. In an aspect, a component can emulate anelectronic component via a virtual machine, e.g., within a cloudcomputing system.

As it is employed in the subject specification, the term “processor” canrefer to substantially any computing processing unit or devicecomprising, but not limited to, single-core processors;single-processors with software multithread execution capability;multi-core processors; multi-core processors with software multithreadexecution capability; multi-core processors with hardware multithreadtechnology; parallel platforms; and parallel platforms with distributedshared memory. Additionally, a processor can refer to an integratedcircuit, an application specific integrated circuit (ASIC), a digitalsignal processor (DSP), a field programmable gate array (FPGA), aprogrammable logic controller (PLC), a complex programmable logic device(CPLD), a discrete gate or transistor logic, discrete hardwarecomponents, or any combination thereof designed to perform the functionsdescribed herein. Further, processors can exploit nano-scalearchitectures such as, but not limited to, molecular and quantum-dotbased transistors, switches, and gates, in order to optimize space usageor enhance performance of user equipment. A processor can also beimplemented as a combination of computing processing units. In thisdisclosure, terms such as “store,” “storage,” “data store,” “datastorage,” “database,” and substantially any other information storagecomponent relevant to operation and functionality of a component areutilized to refer to “memory components,” entities embodied in a“memory,” or components comprising a memory. It is to be appreciatedthat memory and/or memory components described herein can be eithervolatile memory or nonvolatile memory, or can include both volatile andnonvolatile memory. By way of illustration, and not limitation,nonvolatile memory can include read only memory (ROM), programmable ROM(PROM), electrically programmable ROM (EPROM), electrically erasable ROM(EEPROM), flash memory, or nonvolatile random access memory (RAM) (e.g.,ferroelectric RAM (FeRAM).

Volatile memory can include RAM, which can act as external cache memory,for example. By way of illustration and not limitation, RAM is availablein many forms such as synchronous RAM (SRAM), dynamic RAM (DRAM),synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhancedSDRAM (ESDRAM), Synchlink DRAM (SLDRAM), direct Rambus RAM (DRRAM),direct Rambus dynamic RAM (DRDRAM), and Rambus dynamic RAM (RDRAM).Additionally, the disclosed memory components of systems orcomputer-implemented methods herein are intended to include, withoutbeing limited to including, these and any other suitable types ofmemory.

It will be apparent to those skilled in the art having regard to thisdisclosure that other modifications of the exemplary embodiments beyondthose embodiments specifically described here may be made withoutdeparting from the spirit of the disclosure.

What is claimed is:
 1. A method performed by one or more computers, themethod comprising: receiving a request to predict a time to vaginaldelivery of an infant by a patient; and in response to receiving therequest, generating a sequence of multiple delivery time predictions forthe time to vaginal delivery of the infant by the patient, comprising,for each of a plurality of time points in a sequence of multiple timepoints: determining that a criterion for generating a new delivery timeprediction for the time to vaginal delivery of the infant has beensatisfied; and in response to determining that the criterion forgenerating the new delivery time prediction for the time to vaginaldelivery of the infant has been satisfied: processing a current modelinput that characterizes a current state of the patient using a deliverytime machine learning model, in accordance with trained values of a setof model parameters of the delivery time machine learning model, togenerate a prediction for the time to vaginal delivery of the infant,and generating a notification that indicates the prediction for the timeto vaginal delivery of the infant.
 2. The method of claim 1, furthercomprising, at one or more of the plurality of time points: determininga current patient category of the patient based on current values of aset of features of the patient; and selecting the delivery time machinelearning model, from a set of delivery time machine learning models,based on the current patient category of the patient.
 3. The method ofclaim 2, wherein the current patient category of the patientcharacterizes a current physiological state of the patient.
 4. Themethod of claim 1, wherein for each of one or more time points,determining that a criterion for generating a new delivery timeprediction for the time to vaginal delivery of the infant has beensatisfied comprises: determining that a value of a featurecharacterizing the patient has changed by at least a threshold amountsince the time to vaginal delivery of the infant was previouslypredicted.
 5. The method of claim 1, further comprising, for each of oneor more of the time points: obtaining current sensor data generated byone or more sensors located on or in proximity to the patient; whereinthe current model input that characterizes the current state of thepatient comprises the current sensor data.
 6. The method of claim 1,wherein the trained values of the set of model parameters of thedelivery time machine learning model have been generated by operationscomprising: training the set of model parameters of the delivery timemachine learning model by a machine learning training technique.
 7. Themethod of claim 6, wherein training the set of model parameters of thedelivery time machine learning model by the machine learning trainingtechnique comprises: obtaining a set of training examples, wherein eachtraining example corresponds to a respective training patient andcomprises: (i) a training model input to the delivery time machinelearning model that characterizes features of the training patient, and(ii) a target delivery time that defines a time to vaginal delivery ofthe training patient; and training the delivery time machine learningmodel on the set of training examples by the machine learning trainingtechnique.
 8. The method of claim 7, wherein training the delivery timemachine learning model on the set of training examples by the machinelearning training technique comprises, for each training example:training the delivery time machine learning model to process thetraining model input of the training example to generate a predicteddelivery time that matches the target delivery time for the trainingexample.
 9. The method of claim 1, further comprising, for one or moretime points in the sequence of time points, determining that a secondcriterion for generating a new delivery time for the time to vaginaldelivery of the infant has been satisfied, comprising: determining thata threshold duration of time has elapsed since the time to vaginaldelivery of the infant was previously predicted.
 10. The method of claim1, wherein the delivery time machine learning model includes one or moreof: a neural network model, a random forest model, a support vectormachine model, or a linear regression model.
 11. The method of claim 1,wherein generating the notification that indicates the prediction forthe time to vaginal delivery of the infant comprises: transmitting thenotification over a data communications network; and causing thenotification to be presented to a user by way of an application.
 12. Themethod of claim 1, further comprising, for one or more time points inthe sequence of time points, after generating the prediction for thetime to vaginal delivery of the infant: automatically interfacing with aresource reservation system to reserve one or more resources related todelivery of the infant in a time window based on the prediction for thetime to vaginal delivery of the infant.
 13. The method of claim 12,wherein automatically interfacing with the resource reservation systemto reserve one or more resources related to delivery of the infant inthe time window based on the prediction for the time to vaginal deliveryof the infant comprises: automatically reserving a delivery room in thetime window based on the new prediction for the time to vaginal deliveryof the infant.
 14. The method of claim 1, further comprising, for one ormore time points in the sequence of time points, after generating theprediction for the time to vaginal delivery of the infant: determiningthat vaginal delivery of the infant has not occurred within a thresholdduration of time following the prediction for the time to vaginaldelivery of the infant; and automatically generating a notificationindicating that vaginal delivery of the infant has not occurred withinthe threshold duration of time following the prediction for the time tovaginal delivery of the infant.
 15. The method of claim 1, furthercomprising, at one or more time points in the sequence of time points:generating a confidence estimate that measures a confidence of thedelivery time machine learning model in the prediction, generated at thetime point, for the time to vaginal delivery of the infant.
 16. Themethod of claim 1, further comprising, at one or more time points in thesequence of time points: generating a respective importance score foreach of a plurality of features included in a model input to thedelivery time machine learning model; wherein the importance score for afeature measures an impact of the feature on a prediction for time tovaginal delivery of the infant generated by the delivery time machinelearning model by processing the model input.
 17. The method of claim 1,further comprising, for each of one or more time points in the sequenceof time points: automatically storing the prediction for the time tovaginal delivery of the infant generated at the time point in anelectronic medical record of the patient.
 18. The method of claim 1,further comprising, for each of one or more time points in the sequenceof time points: automatically querying a database storing one or moreelectronic medical records of the patient to obtain a set of electronicmedical record data characterizing the patient; wherein the currentmodel input to the delivery time machine learning model at the timepoint comprises the electronic medical record data characterizing thepatient.
 19. A system comprising: one or more computers; and one or morestorage devices communicatively coupled to the one or more computers,wherein the one or more storage devices store instructions that, whenexecuted by the one or more computers, cause the one or more computersto perform operations comprising: receiving a request to predict a timeto vaginal delivery of an infant by a patient; and in response toreceiving the request, generating a sequence of multiple delivery timepredictions for the time to vaginal delivery of the infant by thepatient, comprising, for each of a plurality of time points in asequence of multiple time points: determining that a criterion forgenerating a new delivery time prediction for the time to vaginaldelivery of the infant has been satisfied; and in response todetermining that the criterion for generating the new delivery timeprediction for the time to vaginal delivery of the infant has beensatisfied: processing a current model input that characterizes a currentstate of the patient using a delivery time machine learning model, inaccordance with trained values of a set of model parameters of thedelivery time machine learning model, to generate a prediction for thetime to vaginal delivery of the infant, and generating a notificationthat indicates the prediction for the time to vaginal delivery of theinfant.
 20. One or more non-transitory computer storage media storinginstructions that when executed by one or more computers cause the oneor more computers to perform operations comprising: receiving a requestto predict a time to vaginal delivery of an infant by a patient; and inresponse to receiving the request, generating a sequence of multipledelivery time predictions for the time to vaginal delivery of the infantby the patient, comprising, for each of a plurality of time points in asequence of multiple time points: determining that a criterion forgenerating a new delivery time prediction for the time to vaginaldelivery of the infant has been satisfied; and in response todetermining that the criterion for generating the new delivery timeprediction for the time to vaginal delivery of the infant has beensatisfied: processing a current model input that characterizes a currentstate of the patient using a delivery time machine learning model, inaccordance with trained values of a set of model parameters of thedelivery time machine learning model, to generate a prediction for thetime to vaginal delivery of the infant, and generating a notificationthat indicates the prediction for the time to vaginal delivery of theinfant.